package com.vhr.service;

import com.vhr.VO.DimissionAdminVO;
import com.vhr.entities.Dimission;
import com.vhr.entities.Employee;
import org.springframework.stereotype.Service;

import java.util.List;

/**
 * 离职的接口
 * */
@Service
public interface IDimissionService {

    //查询所有离职申请
    List<Dimission> selectAll();

    //查询所有未审批的离职申请
    List<Dimission> selectWithoutJudge();

    //根据员工外键查询员工离职信息
    List<Dimission> selectByEmployee(Employee emp);

    //插入离职信息（申请离职）
    int addDimission (Dimission dimission);

    //审批离职
    int judegDimission (Dimission dimission,Employee admin,Integer status);

    //根据主键更改信息
    int updateByPrimary(Dimission dimission);

    //根据主键删除信息
    int deleteByPrimary(Dimission dimission);

    //管理员：查询所有离职申请
    List<DimissionAdminVO> AdminSelectAll();

    //管理员：查询所有已经审批过的加班申请
    List<DimissionAdminVO> selectOperated();

    //管理员：查询管理员未审批的加班申请
    List<DimissionAdminVO> selectNoOperated();

    //管理员:条件模糊搜索查询离职申请记录
    List<DimissionAdminVO> listDimissionByCondition(Integer deptId,String empName,Integer dimissionStatus);
}
